home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.cs.arizona.edu
/
ftp.cs.arizona.edu.tar
/
ftp.cs.arizona.edu
/
icon
/
newsgrp
/
group94b.txt
/
000038_icon-group-sender _Sat Sep 3 22:48:20 1994.msg
< prev
next >
Wrap
Internet Message Format
|
1995-02-09
|
3KB
Received: by cheltenham.cs.arizona.edu; Sun, 4 Sep 1994 10:40:21 MST
To: icon-group@cs.arizona.edu
Subject: Re: Icon - still alive??
Message-Id: <778632500@mse>
Date: Sat, 03 Sep 94 22:48:20 UTC
From: whm@mse.com (William H. Mitchell)
Errors-To: icon-group-errors@cs.arizona.edu
>Nick Williams writes:
>What was Icon intended for then? Is it supposed to allow highly portable
>programming by putting huge restrictions on what Icon programmers can
>do? I bet not (why else would there be a preprocessor?, or &features for
>that matter?). ...
I think Icon was intended to provide a mechanism to do research in the
design and implementation of high-level language facilities. Fortunately
for today's Icon users, the research turned out pretty well and as a side
effect a powerful language is available free of charge.
>Forcing programmers to go hack the RTL code from which icont and iconc
>are made or to write C function wrappers to system routines (plus Icon
>wrappers as well), then relink the relevant libraries and executables
>(or use loadfunc()) just to make them think twice before they use a
>system dependent function is CRAZY! ...
>Besides, Icon could turn out to be useful for more than just processing
>text (why are graphics facilities would have been added otherwise?).
I think there's an issue of what's useful to the most people. Most
non-graphical programs can be written in plain old Icon. With the graphic
extensions, now many graphics programs are in Icon's domain.
I just went through an MKS toolkit manual (the MKS toolkit is a collection
of ported UNIX commands) and counted programs that could and could not be
easily written in Icon. I got 47 that could be written in Icon and 12 that
either couldn't be written in Icon or would be inoordinately difficult.
That's about 4:1, which is less than I'd hoped for, but consider this: how
many lines of code would be required would be required to write all the
programs in each category? The non-Icon programs did include some
signficant programs like cpio and find, but many were trivial: chomd,
date, df, du, and id.
To tell you the truth, before typing this note I'd always lamented Icon's lack
of system-level facilities, but considering the domain of programming problems,
I now have to concede that I think Icon's focus is right on target.
But here's a thought for those interested in Icon programs that do serious
system-level stuff: Link in a copy of Perl and write a couple of
interface routines -- sort of like SNOBOL4's CODE function!
/------------------------------\ /----------------\
/ William H. Mitchell \ / 7120 E. Kiva Way \
/ Mitchell Software Engineering \o----/ Tucson, AZ, 85715 \
\ Consulting/Development/Training / \ 602-577-6431 /
\ OO Methods/C++/Icon/UNIX / \ whm@mse.com /
\------------------------------/ \----------------/